The present disclosure describes systems, apparatus and techniques relating to data compression technology.
Lossless data compression is a type of data compression that preserves the original data during the compression process. Thus, decompressing or decoding compressed data encoded using a lossless data compression algorithm allows reconstruction of the original data. This is different from lossy data compression, which approximates the original data and causes some loss of data. Lossless data compression is used when deviation from the original data can be critical for a particular application. Conventional lossless data compression algorithms often generate a statistical model for input data, and use the generated model to map the input data to bit sequences so as to have the repeated data generate a shorter output than non-repeated data.